home *** CD-ROM | disk | FTP | other *** search
/ PC Plus SuperCD (UK) 1995 March / PC Plus Super CD (Issue 101) (March 1995).iso / sharewar / windial / wdce30.mst < prev    next >
Encoding:
Text File  |  1994-10-15  |  18.8 KB  |  645 lines

  1. '**************************************************************************
  2. '*                       WinDial Setup
  3. '**************************************************************************
  4.  
  5. ''$DEFINE DEBUG  ''Define for script development/debugging
  6.  
  7. '$INCLUDE 'setupapi.inc'
  8. '$INCLUDE 'msdetect.inc'
  9.  
  10. ''Dialog ID's
  11. CONST WELCOME       = 100
  12. CONST ASKQUIT       = 200
  13. CONST DESTPATH      = 300
  14. CONST EXITFAILURE   = 400
  15. CONST EXITQUIT      = 600
  16. CONST EXITSUCCESS   = 700
  17. CONST CDGETNAMEORG  = 7500
  18. CONST APPHELP       = 900
  19. CONST BADPATH       = 6400
  20. CONST SHAREDWINDOWS = 7701
  21. CONST BILLBOARD     = 4545
  22. CONST BILLBOARD1    = 4544
  23. CONST BILLBOARD2    = 4543
  24. CONST BILLBOARD3    = 4542
  25. CONST ASKWINWORD6    = 7900
  26. CONST ASKPROGRAMGROUP= 8000
  27.  
  28.  
  29. CONST INSTALL_INI_FILE$     = "INSTALL.INI"
  30. CONST OLD_INI_FILE$         = "WDCE30.INI"
  31. CONST OLD_INI_FILE1$        = "WDCE22.INI"
  32. CONST OLD_INI_FILE2$        = "WDCE.INI"
  33.  
  34. CONST WINWORD6_INI_FILE$    = "WINWORD6.INI"
  35. CONST INI_USER_NAME$        = "Name"
  36. CONST INI_USER_COMPANY$     = "Company"
  37. CONST INI_USER_RECNO$       = "Reg"
  38. CONST INI_USER_DATE$        = "Ref"
  39. CONST INI_SHARED$           = "Shared"
  40. CONST INI_PRIVATE_PATH$     = "PrivateDir"
  41.  
  42.  
  43. ''Bitmap ID
  44. CONST LOGO = 1
  45.  
  46. 'strings
  47. GLOBAL DEST$                    ''Default destination directory.
  48. GLOBAL SrcDir$                  ''Source directory
  49. GLOBAL OPTCUR$                  ''Option selection from option dialog.
  50. GLOBAL UserName$                ''User Name.
  51. GLOBAL Company$                 ''Company Name.
  52. GLOBAL Regno$                   ''Registration Number.
  53. GLOBAL UserDate$                ''
  54. GLOBAL UserPrivateDir$          ''Users Private data directory
  55. GLOBAL szNoPrompt$              ''Install without prompting the user
  56. GLOBAL szPromptDir$             ''Prompt for install directory
  57. GLOBAL szLicensePrompt$         ''Prompt for Name
  58. GLOBAL szWinword6StartupPath$   ''Winword 6.x startup path
  59.  
  60.  
  61. 'integers
  62. GLOBAL nHwndFrame%      ''Handle to frame window
  63. GLOBAL nHinst%          ''Application instance
  64. GLOBAL nAdd_Wll%        ''Winword 6.x  WLL
  65. GLOBAL nAdd_ProgGroup%  ''Add Progman group
  66.  
  67. DECLARE SUB Install
  68. DECLARE SUB ReadInstallINI
  69.  
  70. DECLARE FUNCTION CheckForWord(CUIDLL$, HELP%, HELPPROC$) AS integer
  71. DECLARE FUNCTION AskProgmanGroup(CUIDLL$, HELP%, HELPPROC$) AS integer
  72. DECLARE FUNCTION MakePath (szDir$, szFile$) AS STRING
  73. DECLARE FUNCTION IsShared(CUIDLL$, HELP%, HELPPROC$) AS integer
  74. DECLARE FUNCTION ShowWindow      lib "User" (hwnd%, i%) as integer
  75. DECLARE FUNCTION BitmapCntrlInit LIB "mscuistf.dll" as INTEGER
  76. DECLARE FUNCTION Ctl3dRegister LIB "ctl3d.dll"(HANDLE%) as INTEGER
  77. DECLARE FUNCTION Ctl3dUnregister LIB "ctl3d.dll"(HANDLE%) as INTEGER
  78. DECLARE FUNCTION Ctl3dAutoSubclass LIB "ctl3d.dll"(HANDLE%) as INTEGER
  79. DECLARE FUNCTION PlaySound LIB "mscuistf.dll"(szWav$) AS INTEGER
  80.  
  81.  
  82.  
  83.  
  84.  
  85.  
  86.  
  87. '______________________________________________________________________________
  88. '
  89. '   Init variables
  90. '______________________________________________________________________________
  91.  
  92.  
  93.     SrcDir$ = GetSymbolValue("STF_SRCDIR")
  94.      n% = PlaySound("WELSET.WAV")
  95. INIT:
  96.  
  97.     nAdd_Wll% = 0
  98.     nAdd_ProgGroup% = 1
  99.     nHinst%     = HinstFrame()
  100.     nHwndFrame% = HwndFrame()
  101.     hWndMain% = HwndFrame()
  102.     n% = Ctl3dRegister(nHinst%)
  103.     n% = Ctl3dAutoSubclass(nHinst%)
  104.     n% = ShowWindow(nHwndFrame%, 3)
  105.  
  106.     CUIDLL$ = "mscuistf.dll"            ''Custom user interface dll
  107.  
  108.        n% = BitmapCntrlInit()
  109.        if n% = 0 Then
  110.        n% = DoMsgBox("Init", "DEBUG", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  111.        EndIf
  112.  
  113.     HELPPROC$ = "FHelpDlgProc"          ''Help dialog procedure
  114.  
  115.     SetBitmap CUIDLL$, LOGO
  116.     SetTitle "WinDial Corporate Edition Setup"
  117.  
  118.     szInf$ = GetSymbolValue("STF_SRCINFPATH")
  119.     IF szInf$ = "" THEN
  120.     szInf$ = GetSymbolValue("STF_CWDDIR") + "WDCE30.INF"
  121.     END IF
  122.     ReadInfFile szInf$
  123.  
  124.     OPTCUR$ = "1"
  125.  
  126.     ReadInstallINI
  127.  
  128. '$IFDEF DEBUG
  129.     i% = SetSizeCheckMode(scmOnIgnore)    '' could use scmOff; def = scmOnFatal
  130.     WinDrive$ = MID$(GetWindowsDir, 1, 1)
  131.     IF IsDriveValid(WinDrive$) = 0 THEN
  132.     i% = DoMsgBox("Windows drive ('"+WinDrive$+"') is not a valid drive.", "DEBUG", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  133.     GOTO QUIT
  134.     END IF
  135. '$ENDIF ''DEBUG
  136.  
  137.  
  138. '______________________________________________________________________________
  139. '
  140. '   Welcome
  141. '______________________________________________________________________________
  142.  
  143.  
  144.  
  145. WELCOME:
  146.     IF szNoPrompt$ = "NO" Then
  147.     sz$ = UIStartDlg(CUIDLL$, WELCOME, "FInfoDlgProc", APPHELP, HELPPROC$)
  148.     IF sz$ = "CONTINUE" THEN
  149.     UIPop 1
  150.     ELSE
  151.     GOSUB ASKQUIT
  152.     GOTO WELCOME
  153.     END IF
  154.     END IF
  155.  
  156.  
  157. '______________________________________________________________________________
  158. '
  159. '   Names
  160. '______________________________________________________________________________
  161.  
  162.  
  163.  
  164.  
  165. NAMES:
  166.     SetSymbolValue "NameOut", UserName$
  167.     SetSymbolValue "OrgOut", Company$
  168.     SetSymbolValue "RegNoOut", Regno$
  169.  
  170.  
  171.     GOTO OPTL1
  172.  
  173.  
  174.  
  175. '______________________________________________________________________________
  176. '
  177. '   Optl1
  178. '______________________________________________________________________________
  179.  
  180.  
  181.  
  182. OPTL1:
  183.  
  184.     szShareDir$ = GetWindowsDir()
  185.     IF szNoPrompt$ = "NO" Then
  186.     IF szLicensePrompt$ = "YES" Then
  187.     sz$ = UIStartDlg(CUIDLL$, CDGETNAMEORG, "FNameOrgDlgProc", APPHELP, HELPPROC$)
  188.     IF UCASE$(sz$) = "CONTINUE" OR UCASE$(szLicense$) = "YES" THEN
  189.     szName$ = GetSymbolValue("NameOut")
  190.     szCompany$ = GetSymbolValue("OrgOut")
  191.     szRegno$ = GetSymbolValue("RegNoOut")
  192.     szDate$ = DATETIME$ 'str$(DATE)
  193.     'szDate$ = GetDateOfFile(szShareDir$+OLD_INI_FILE$) DATE
  194.     UIPop(1)
  195.     ELSEIF sz$ = "REACTIVATE" THEN
  196.     GOTO NAMES
  197.     ELSE
  198.     GOSUB ASKQUIT
  199.     GOTO NAMES
  200.     END IF
  201.     ENDIF
  202.     ENDIF
  203.     INI_SECTION$ = "UserInfo"
  204.     CreateIniKeyValue MakePath(szShareDir$,OLD_INI_FILE$), INI_SECTION$, INI_USER_NAME$, szName$, cmoOverwrite
  205.     CreateIniKeyValue MakePath(szShareDir$,OLD_INI_FILE$), INI_SECTION$, INI_USER_COMPANY$, szCompany$, cmoOverwrite
  206.     CreateIniKeyValue MakePath(szShareDir$,OLD_INI_FILE$), INI_SECTION$, INI_USER_RECNO$, szRegno$, cmoOverwrite
  207.     CreateIniKeyValue MakePath(szShareDir$,OLD_INI_FILE$), INI_SECTION$, INI_USER_DATE$, szDate$, cmoOverwrite
  208.  
  209.  
  210. '______________________________________________________________________________
  211. '
  212. '   GetPath
  213. '______________________________________________________________________________
  214.  
  215.  
  216. GETPATH:
  217.     SetSymbolValue "EditTextIn", DEST$
  218.     SetSymbolValue "EditFocus", "END"
  219. GETPATHL1:
  220.  
  221.     IF szNoPrompt$ = "NO" Then
  222.     IF szPromptDir$ = "YES" Then
  223.  
  224.     sz$ = UIStartDlg(CUIDLL$, DESTPATH, "FEditDlgProc", APPHELP, HELPPROC$)
  225.     DEST$ = GetSymbolValue("EditTextOut")
  226.     'n% = DoMsgBox(DEST$, "DEBUG 1", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  227.     IF sz$ = "CONTINUE" THEN
  228.     IF IsDirWritable(DEST$) = 0 THEN
  229.         'n% = DoMsgBox(DEST$, "DEBUG 2", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  230.         GOSUB BADPATH
  231.         GOTO GETPATHL1
  232.     END IF
  233.     UIPop 1
  234.     ELSEIF sz$ = "REACTIVATE" THEN
  235.     GOTO GETPATHL1
  236.     ELSEIF sz$ = "BACK" THEN
  237.     UIPop 1
  238.     GOTO NAMES
  239.     ELSE
  240.     GOSUB ASKQUIT
  241.     GOTO GETPATH
  242.     END IF
  243.     END IF
  244.     END IF
  245.     CreateDir DEST$, cmoNone
  246.     n% = CheckForWord(CUIDLL$, APPHELP, HELPPROC$)
  247.     n% = AskProgmanGroup(CUIDLL$, APPHELP, HELPPROC$)
  248.     n% = IsShared(CUIDLL$, HELP%, HELPPROC$)
  249.     Install
  250.  
  251.  
  252. '______________________________________________________________________________
  253. '
  254. '   Quit
  255. '______________________________________________________________________________
  256.  
  257.  
  258.  
  259. QUIT:
  260.     ON ERROR GOTO ERRQUIT
  261.  
  262.     IF ERR = 0 THEN
  263.  
  264. '    n% = sndPlaySound(SrcDir$+"ENDSET.WAV", 1 or 2)
  265.     'n% = PlaySound(SrcDir$+"ENDSET.WAV")
  266.     n% = PlaySound("ENDSET.WAV")
  267.     dlg% = EXITSUCCESS
  268.     ELSEIF ERR = STFQUIT THEN
  269.     dlg% = EXITQUIT
  270.     ELSE
  271.     dlg% = EXITFAILURE
  272.     END IF
  273. QUITL1:
  274.     sz$ = UIStartDlg(CUIDLL$, dlg%, "FInfo0DlgProc", 0, "")
  275.     IF sz$ = "REACTIVATE" THEN
  276.     GOTO QUITL1
  277.     END IF
  278.     UIPop 1
  279.     n% = Ctl3dUnregister(nHinst%)
  280.     END
  281.  
  282. ERRQUIT:
  283.     i% = DoMsgBox("Setup sources were corrupted, contact DameWare Development!", "Setup Message", MB_OK+MB_TASKMODAL+MB_ICONHAND)
  284.     n% = Ctl3dUnregister(nHinst%)
  285.     END
  286.  
  287.  
  288. '______________________________________________________________________________
  289. '
  290. '   BadPath
  291. '______________________________________________________________________________
  292.  
  293.  
  294.  
  295.  
  296. BADPATH:
  297.     sz$ = UIStartDlg(CUIDLL$, BADPATH, "FInfo0DlgProc", 0, "")
  298.     IF sz$ = "REACTIVATE" THEN
  299.     GOTO BADPATH
  300.     END IF
  301.     UIPop 1
  302.     RETURN
  303.  
  304.  
  305.  
  306.  
  307. '______________________________________________________________________________
  308. '
  309. '   Ask Quit
  310. '______________________________________________________________________________
  311.  
  312.  
  313. ASKQUIT:
  314.     sz$ = UIStartDlg(CUIDLL$, ASKQUIT, "FQuitDlgProc", 0, "")
  315.  
  316.     IF sz$ = "EXIT" THEN
  317.     UIPopAll
  318.     ERROR STFQUIT
  319.     ELSEIF sz$ = "REACTIVATE" THEN
  320.     GOTO ASKQUIT
  321.     ELSE
  322.     UIPop 1
  323.     END IF
  324.     RETURN
  325.  
  326.  
  327. '**
  328. '** Purpose:
  329. '**     Builds the copy list and performs all installation operations.
  330. '** Arguments:
  331. '**     none.
  332. '** Returns:
  333. '**     none.
  334. '*************************************************************************
  335. SUB Install STATIC
  336.  
  337.     'ln& = 1
  338.  
  339.     AddToBillboardList "mscuistf.dll", BILLBOARD, "FModelessDlgProc", 1
  340.     AddToBillboardList "mscuistf.dll", BILLBOARD1, "FModelessDlgProc", 1
  341.     AddToBillboardList "mscuistf.dll", BILLBOARD2, "FModelessDlgProc", 1
  342.     AddToBillboardList "mscuistf.dll", BILLBOARD3, "FModelessDlgProc", 1
  343.     y% = GetScreenHeight()
  344.     x% = GetScreenWidth()
  345.     SetCopyGaugePosition (x%/4), (y%/4)+40
  346.  
  347.     OpenLogFile MakePath(DEST$, "INSTLOG.TXT"), 0
  348.     WriteToLogFile ""
  349.     WriteToLogFile "  WinDial Install Log: "+DATETIME$
  350.     WriteToLogFile ""
  351.     WriteToLogFile "  User chose as destination directory: '" + DEST$ + "'"
  352.     WriteToLogFile "  User chose option: '" + OPTCUR$ + "'"
  353.     WriteToLogFile ""
  354.     WriteToLogFile "  May have had to create the directory: " + DEST$
  355.     WriteToLogFile ""
  356.  
  357.     AddSectionFilesToCopyList "Files", SrcDir$, DEST$
  358.  
  359.  
  360.     szWinSysDir$ = GetWindowsSysDir()
  361.     AddSectionFilesToCopyList "System", SrcDir$, szWinSysDir$
  362.  
  363.     if nAdd_Wll% = 1 Then
  364.     AddSectionFilesToCopyList "Special", SrcDir$, szWinword6StartupPath$
  365.     else
  366.     AddSectionFilesToCopyList "Special", SrcDir$, DEST$
  367.     Endif
  368.  
  369.     Drive$ = MID$(SrcDir$, 1, 1)
  370.     IF IsDriveRemovable(Drive$) = 1 THEN
  371.     AddSectionFilesToCopyList "Install", SrcDir$, DEST$
  372.     EndIf
  373.  
  374.     IF nSHARED% = 1 THEN
  375.         IF UserPrivateDir$ = "" Then
  376.         szShareDir$ = GetWindowsDir()
  377.         AddSectionFilesToCopyList "Private", SrcDir$, szShareDir$
  378.         ELSE
  379.         AddSectionFilesToCopyList "Private", SrcDir$, UserPrivateDir$
  380.         ENDIF
  381.     ELSE
  382.     AddSectionFilesToCopyList "Private", SrcDir$, DEST$
  383.     ENDIF
  384.  
  385.     CopyFilesInCopyList
  386.     ClearBillboardList
  387.  
  388.  
  389.     if nAdd_ProgGroup% = 1 Then
  390.     CreateProgmanGroup "WinDial C. E.", "", cmoNone
  391.     ShowProgmanGroup  "WinDial C. E.", 1, cmoNone
  392.     'All$ = MakePath(DEST$,"wdce30.exe") + ",0,0,0," + DEST$ +",0,0"
  393.     CreateProgmanItem "WinDial C. E.", "WinDial C. E.", MakePath(DEST$,"wdce30.exe"),"" , cmoVital
  394.  
  395.     'All$ = "winhelp.exe "+MakePath(DEST$,"wdce.hlp") + ",0,0,0," + DEST$ +",0,0"
  396.     CreateProgmanItem "WinDial C. E.", "WinDial Help", "winhelp.exe "+MakePath(DEST$,"wdce30.hlp"),"" , cmoOverwrite
  397.  
  398.     'All$ = "write.exe "+MakePath(DEST$,"windial.wri") + ",0,0,0," + DEST$ +",0,0"
  399.     'CreateProgmanItem "WinDial C. E.", "WinDial Write", "write.exe "+MakePath(DEST$,"windial.wri"),"" , cmoOverwrite
  400.  
  401.     'All$ = "write.exe "+MakePath(DEST$,"registra.wri") + ",0,0,0," + DEST$ +",0,0"
  402.     CreateProgmanItem "WinDial C. E.", "WinDial Registration", "write.exe "+MakePath(DEST$,"registra.wri"),"" , cmoOverwrite
  403.      EndIf
  404.  
  405.     CloseLogFile
  406.  
  407. END SUB
  408.  
  409.  
  410.  
  411. '**
  412. '** Purpose:
  413. '**     Appends a file name to the end of a directory path,
  414. '**     inserting a backslash character as needed.
  415. '** Arguments:
  416. '**     szDir$  - full directory path (with optional ending "\")
  417. '**     szFile$ - filename to append to directory
  418. '** Returns:
  419. '**     Resulting fully qualified path name.
  420. '*************************************************************************
  421. FUNCTION MakePath (szDir$, szFile$) STATIC AS STRING
  422.     IF szDir$ = "" THEN
  423.     MakePath = szFile$
  424.     ELSEIF szFile$ = "" THEN
  425.     MakePath = szDir$
  426.     ELSEIF MID$(szDir$, LEN(szDir$), 1) = "\" THEN
  427.     MakePath = szDir$ + szFile$
  428.     ELSE
  429.     MakePath = szDir$ + "\" + szFile$
  430.     END IF
  431. END FUNCTION
  432.  
  433. '*************************************************************************
  434. '**
  435. '** ReadInstallINI:
  436. '**     Retrieve default values from Install.INI, if any
  437. '**
  438. '*************************************************************************
  439.  
  440. SUB ReadInstallINI STATIC
  441.  
  442.  
  443.  
  444.  
  445.     szTempPath$ = SrcDir$ + INSTALL_INI_FILE
  446.     INI_SECTION$ = "InstallInfo"
  447.     INI_KEY$     = "NoPrompt"
  448.     szNoPrompt$    = GetIniKeyString(szTempPath$, INI_SECTION$, INI_KEY$)
  449.     IF szNoPrompt$ = "" THEN
  450.         szNoPrompt$ = "NO"
  451.     ELSE
  452.         szNoPrompt$ = ucase$(szNoPrompt$)
  453.     END IF
  454.  
  455.     ''  User Information
  456.     ''
  457.     INI_SECTION$ = "UserInfo"
  458.     UserName$ = GetIniKeyString(szTempPath$, INI_SECTION$, INI_USER_NAME$)
  459.     Company$  = GetIniKeyString(szTempPath$, INI_SECTION$, INI_USER_COMPANY$)
  460.     Regno$    = GetIniKeyString(szTempPath$, INI_SECTION$, INI_USER_RECNO$)
  461.     UserDate$ = GetIniKeyString(szTempPath$, INI_SECTION$, INI_USER_DATE$)
  462.  
  463.     IF UserName$ = "" And Company$ = "" Then
  464.     szTempPath$ = GetWindowsDir() + OLD_INI_FILE
  465.     UserName$ = GetIniKeyString(szTempPath$, INI_SECTION$, INI_USER_NAME$)
  466.     Company$  = GetIniKeyString(szTempPath$, INI_SECTION$, INI_USER_COMPANY$)
  467.     Regno$    = GetIniKeyString(szTempPath$, INI_SECTION$, INI_USER_RECNO$)
  468.     UserDate$ = GetIniKeyString(szTempPath$, INI_SECTION$, INI_USER_DATE$)
  469.     EndIF
  470.  
  471.     IF UserName$ = "" And Company$ = "" Then
  472.     szTempPath$ = GetWindowsDir() + OLD_INI_FILE1
  473.     UserName$ = GetIniKeyString(szTempPath$, INI_SECTION$, INI_USER_NAME$)
  474.     Company$  = GetIniKeyString(szTempPath$, INI_SECTION$, INI_USER_COMPANY$)
  475.     Regno$    = GetIniKeyString(szTempPath$, INI_SECTION$, INI_USER_RECNO$)
  476.     UserDate$ = GetIniKeyString(szTempPath$, INI_SECTION$, INI_USER_DATE$)
  477.     EndIF
  478.  
  479.  
  480.     szTempPath$ = SrcDir$ + INSTALL_INI_FILE
  481.     ''  Program file directory
  482.     ''
  483.  
  484.     INI_SECTION$ = "InstallInfo"
  485.     INI_KEY$     = "DestinationPrompt"
  486.     szPromptDir$ = GetIniKeyString(szTempPath$, INI_SECTION$, INI_NOPROMPT$)
  487.     IF szPromptDir$ = "" THEN
  488.        szPromptDir$ = "YES"
  489.     ELSE
  490.        szPromptDir$ = ucase$(szPromptDir$)
  491.     END IF
  492.  
  493.     INI_KEY$     = "Destination"
  494.     szProgFileDir$ = GetIniKeyString(szTempPath$, INI_SECTION$, INI_KEY$)
  495.  
  496.     IF szProgFileDir$ = "" Then
  497.     DEST$ = "C:\WDCE30"
  498.     Else
  499.     DEST$ = ucase$(szProgFileDir$)
  500.     EndIf
  501.  
  502.  
  503.     INI_KEY$     = "LicensePrompt"
  504.     szLicensePrompt$  = GetIniKeyString(szTempPath$, INI_SECTION$, INI_KEY$)
  505.     IF szLicensePrompt$ = "" THEN
  506.         szLicensePrompt$ = "YES"
  507.     ELSE
  508.         szLicensePrompt$ = ucase$(szLicensePrompt$)
  509.     END IF
  510.  
  511.     ''  Create new icon after installation?
  512.     ''
  513.     INI_KEY$     = "GroupAndIcon"
  514.     szCreateIcon$  = GetIniKeyString(szTempPath$, INI_SECTION$, INI_KEY$)
  515.     IF UCASE$(szCreateIcon$) = "YES" THEN
  516.         nAdd_ProgGroup% = 1
  517.     ELSE
  518.         nAdd_ProgGroup% = 0
  519.     END IF
  520.  
  521.     INI_SECTION$ = "Display"
  522.     INI_KEY$     = "Caption"
  523.     szStr$  = GetIniKeyString(szTempPath$, INI_SECTION$, INI_KEY$)
  524.     szTempPath$ = MakePath(GetWindowsDir,OLD_INI_FILE$)
  525.     CreateIniKeyValue szTempPath$, INI_SECTION$, INI_KEY$, szStr$, cmoOverwrite
  526.  
  527.  
  528.  
  529.  
  530. END SUB
  531.  
  532. '*************************************************************************
  533. '**
  534. '** CheckForWord:
  535. '**     Check if Winword 6.x is installed
  536. '**
  537. '*************************************************************************
  538.  
  539. FUNCTION CheckForWord(CUIDLL$, HELP%, HELPPROC$) Static AS integer
  540.  
  541.     szTempPath$ = GetWindowsDir + WINWORD6_INI_FILE$
  542.  
  543.     ''  User Information
  544.     ''
  545.     INI_SECTION$ = "Microsoft Word"
  546.     INI_KEY$ = "STARTUP-PATH"
  547.  
  548.     szWinword6StartupPath$ = GetIniKeyString(szTempPath$, INI_SECTION$, INI_KEY$)
  549.  
  550.     IF szWinword6StartupPath$ <> "" Then
  551.      IF DoesDirExist(szWinword6StartupPath$) = 1 Then
  552.         IF szNoPrompt$ = "NO" Then
  553.             sz$ = UIStartDlg(CUIDLL$, ASKWINWORD6, "FAskYesNoProc", HELP%, HELPPROC$)
  554.             IF sz$ = "CONTINUE" THEN
  555.             nAdd_Wll% = 1
  556.             END IF
  557.             UIPop 1
  558.         Else
  559.         nAdd_Wll% = 1
  560.         END IF
  561.      END IF
  562.  
  563.     Endif
  564.  
  565. END FUNCTION
  566.  
  567. '*************************************************************************
  568. '**
  569. '** AskProgmanGroup:
  570. '**
  571. '**
  572. '*************************************************************************
  573.  
  574. FUNCTION AskProgmanGroup(CUIDLL$, HELP%, HELPPROC$) Static AS integer
  575.  
  576.     IF szNoPrompt$ = "NO" Then
  577.     sz$ = UIStartDlg(CUIDLL$, ASKPROGRAMGROUP, "FAskYesNoProc", HELP%, HELPPROC$)
  578.     IF sz$ = "CONTINUE" THEN
  579.     nAdd_ProgGroup% = 1
  580.     else
  581.     nAdd_ProgGroup% = 0
  582.     END IF
  583.  
  584.     UIPop 1
  585.     END IF
  586.  
  587. END FUNCTION
  588.  
  589. '*************************************************************************
  590. '**
  591. '** IsShared:
  592. '**
  593. '**
  594. '*************************************************************************
  595.  
  596. FUNCTION IsShared(CUIDLL$, HELP%, HELPPROC$) Static AS integer
  597.  
  598.  
  599.     szShareDir$ = GetWindowsDir()
  600.     nSHARED% = IsWindowsShared()
  601.     INI_SECTION$ = "UserInfo"
  602.     szTempPath$ = MakePath(szShareDir$,OLD_INI_FILE$)
  603.  
  604.  
  605.     IF nSHARED% = 1  AND szNoPrompt$ = "YES" THEN
  606.     sz$ = UIStartDlg(CUIDLL$, SHAREDWINDOWS, "FSharedWindowsDlgProc", APPHELP, HELPPROC$)
  607.     UIPop(1)
  608.  
  609.  
  610.  
  611.  
  612.     IF UCASE$(sz$) = "YES" THEN
  613.     CreateIniKeyValue szTempPath$, INI_SECTION$, "Shared", "Yes", cmoOverwrite
  614.     CreateIniKeyValue szTempPath$, INI_SECTION$, "PrivateDir", szShareDir$, cmoOverwrite
  615.     nSHARED% = 1
  616.     UserPrivateDir$ = szShareDir$
  617.     END IF
  618.  
  619.     ELSE
  620.  
  621.     INI_KEY$     = "Shared"
  622.     szTempPath$ = SrcDir$ + INSTALL_INI_FILE
  623.     szStr$ = GetIniKeyString(szTempPath$, INI_SECTION$, INI_KEY$)
  624.     IF UCASE$(szStr$) = "YES" Then
  625.     nSHARED% = 1
  626.     ELSE
  627.     nSHARED% = 0
  628.     END IF
  629.     szTempPath$ = MakePath(szShareDir$,OLD_INI_FILE$)
  630.     CreateIniKeyValue szTempPath$, INI_SECTION$, INI_KEY$, szStr$, cmoOverwrite
  631.  
  632.     INI_KEY$     = "PrivateDir"
  633.     szTempPath$ = SrcDir$ + INSTALL_INI_FILE
  634.     szStr$ = GetIniKeyString(szTempPath$, INI_SECTION$, INI_KEY$)
  635.     IF szStr$ = "" AND nSHARED% = 1 Then
  636.     szStr$ = GetWindowsDir()
  637.     EndIF
  638.     szTempPath$ = MakePath(szShareDir$,OLD_INI_FILE$)
  639.     CreateIniKeyValue szTempPath$, INI_SECTION$, INI_KEY$, szStr$, cmoOverwrite
  640.     END IF
  641.  
  642.  
  643.  
  644. END FUNCTION
  645.